Upgrading SNiFF+ specific files from 2.3/2.4 (Unix and Windows)

- Site-wide Preference settings
When SNiFF+ is installed in the same directory where 2.3/2.4 is located a copy named

SitePrefs.sniff.old is created. When starting SNiFF 3.2 for the first time all entries are merged automatically with one exception. The VCS adaptors that came with 2.3/2.4 are not merged if they are available with the same name in 3.2. But if you have created new adaptors using other than the default names they will be merged automatically. Therefore, if you have applied changes to the default adaptors that you want to upgrade please rename them in 2.3/2.4 before you upgrade. They will then appear in 3.2 with the new name and you can restore the old name then in 3.2.
- User specific Preference settings
For each user all the existing User specific settings are converted automatically to the new SNiFF+ 3.2 format and are written to the new location ( $HOME/.sniffrc/ UserPrefs.sniff on Unix, %SNIFF_DIR%\Profiles\<user_name>\UserPrefs.sniff on Windows).
- Working Environments
SNiFF+ 3.2 uses a new data format and new file names to store Working Environments information. The old working environments directory is used so all your working environment information is retained. The new working environment files are located in $SNIFF_DIR/workingenvs.orig directory.

| Note
| If you want to do the SNiFF+ 3.2 C++ Tutorial, in the Preferences > Working Environment Config. Directory field select your $SNIFF_DIR/workingenvs.orig directory.

- Project files
The format of the Project files has changed between SNiFF+ 2.3/2.4 and 3.2. It is, of course, possible to read the old format with 3.2 but 2.3/2.4 is not able to read the new format. Therefore, if you want to work on a project with 2.3/2.4 and 3.2 at the same time be careful to make changes to the project attributes (project settings, list of files/ subprojects) with 2.3/2.4 only.
The make command can now also be specified in the new platform settings. This allows you to compile from within SNiFF+ on platforms with different make commands without changing the Project file. Only if you want to take advantage of this new feature, you have to clear the make command in the Project file. Otherwise, the setting in the Project file will overwrite the setting in the Platform definition.
When using more than one Parser Config File, the separator has been changed from ":" to ";" in 3.2. You have to modify your project files manually if you use several Parser Config files.
The settings for the Java Source Root and Generate Root Directory are no longer specific to a Working Environment but are stored per Project and can be set on the Java tab view on the Build Structure page of the Project Attributes. If you have used these settings in 2.3/2.4 you need to update your project files accordingly. The settings in the Working Environments are no longer used by SNiFF+ 3.2.
- Project state files
SNiFF+ 3.2 uses a new data format to store Project state information. To make it possible to use SNiFF+ 2.3/2.4 at the same time as 3.2 we have added the extension V0.32 to files containing project state information, e.g.
Test.shared.state
is now
Test.shared.state.V0.32
If you upgrade to 3.2 and do not use 2.3/2.4 any more we recommend that you delete the old state files manually as they are no longer needed.
- Symbol information
SNiFF+ 3.2 uses a new data format to store symbol information. Therefore, when you load an existing project in 3.2 for the first time all your files are reparsed automatically. To make it possible to use SNiFF+ 2.3/2.4 at the same time as 3.2 we have added the extension V0.32 to files containing symbol information, e.g. Test.shared.symtab is now Test.shared.symtab.V0.32 . If you upgrade to 3.2 and do not use 2.3/2.4 any more we recommend to delete the old symbol information manually as it is no longer needed.
- Cross Reference information
SNiFF+ 3.2 uses a new data format to store Cross Reference information for the RAM- based solution. Therefore, when you start the Cross Referencer for an existing project for the first time new Cross Reference information is generated automatically. To make it possible to use SNiFF+ 2.3/2.4 at the same time as 3.2 we have added the extension V0.32 to files containing Cross Reference information, e.g. Object.h.ref is now Object.h.ref.V0.32 . If you upgrade to 3.2 and do not use 2.3/2.4 any more we recommend that you delete the old Cross Reference information manually as it is no longer needed.

| Note
| You may delete the backup files and directories having the .old extension after a successful upgrade.

- Makefiles
Due to the complexity of Makefiles it is not possible to upgrade them automatically. If you have applied changes to the Project- or Platform Makefiles that came with 2.3/2.4 you have to merge them manually into 3.2. As there are no major changes to the structure and functionality this should be straightforward.
- Custom menu files
Site specific Custom menu files can be upgraded by copying them manually. SiteMenus.sniff must be copied from /config.old to /config . User specific settings are reused automatically without any change.
- File dialog history
Also the files containing the file dialog history entries can be upgraded by copying them manually.
On Windows copy the file
%HOME%\.FileDialogHistory
to %SNIFF_DIR%\Profiles\username\FileDialogHistory .
On Unix copy the file
$HOME/.FileDialogHistory
to $HOME/.sniffrc/FileDialogHistory .